1. Field of the Invention
The present invention relates to an information processing apparatus, an information processing system, an information output control method, a storage medium, and a program.
2. Description of the Related Art
When printout is performed by using a known printing apparatus (printer, for example) for printing out information in a color or monochrome page, an input rendering command is converted to intermediate data, the intermediate data is rendered to a first bitmap, attribute information of the intermediate data is associated with each pixel of the first bitmap so as to be held, the first bitmap is converted to a second bitmap by using the held information, and the conversion result is supplied to a printer engine.
Also, the above-described printing apparatus automatically determines whether the information to be printed out (rendered) is color-page information or monochrome-page information, by using one of the following two methods (1) and (2).
<Automatic Determination Method (1)>
At the time when intermediate data of a page is generated by converting an input rendering command to intermediate data, it is determined whether the intermediate data of this page is data of a color page or a monochrome page.
That is, when the entire intermediate data is monochrome data, it is determined that the page is a monochrome page, and the intermediate data is rendered in 8-bits/pixel gray on a first bitmap. Then, the first bitmap is converted to a second bitmap in 4-bits/pixel K, and the conversion result is transferred to a printer engine.
On the other hand, when one or more pieces of color data exist in the intermediate data, that page is determined to be a color page. In this case, the intermediate data is rendered to the first bitmap in 8-bits/pixel RGB, the first bitmap is converted to a second bitmap in 4-bits/pixel MCYK, and the conversion result is transferred to the printer engine.
FIG. 8B shows an example of the intermediate data. The intermediate data is stored in an intermediate buffer. FIG. 8A shows a desired result of printing generated by using the intermediate data.
Specifically, as shown in FIG. 8B, the intermediate data includes object 1: attribute=character, printing position (X and Y), font, size, character code, and color; object 2: attribute=figure, printing position (X and Y), shape=circle, radius, and color; and object 3: attribute=image, printing position (X and Y), width, height, and matrix of an image, and a pointer for the image substance.
As described above, the intermediate data includes information such as the form, color, and printing position of each of the rendering objects 1 to 3. Also, the color information of each rendering object is information of 8-bits/pixel RGB.
When the intermediate data shown in FIG. 8B is rendered by a renderer, a result which is equivalent to the printing result as shown in FIG. 8A can be obtained.
Accordingly, the intermediate data as shown in FIG. 8B is determined to be color-page data or monochrome-page data in the following way. The color information of objects 1 to 3 includes 8-bits/pixel RGB information. When the condition R=G=B is satisfied in the color information of the objects 1 and 2 and when the condition R=G=B is satisfied in all the pixels of the image of the object 3, the page is determined to be a monochrome page, and otherwise, the page is determined to be a color page.
<Automatic Determination Method (2)>
At the time when intermediate data of a page is generated by converting an input rendering command to intermediate data, the intermediate data is rendered to the first bitmap in 8-bits/pixel RGB. When one page of the first bitmap is generated, it is determined whether the data is color-page data or monochrome-page data.
That is, when the condition R=G=B is satisfied in all the pixels of the first bitmap, the page is determined to be a monochrome page, the first bitmap is converted to a second bitmap in 4-bits/pixel K, and the conversion result is transferred to the printer engine.
On the other hand, when one or more pixels in which the condition R=G=B is not satisfied exist in the first bitmap, the page is determined to be a color page, the first bitmap is converted to a second bitmap in 4-bits/pixel MCYK, and the conversion result is transferred to the printer engine.
In the above-described printing apparatus, however, the following problems (1) and (2) are caused when the printing apparatus automatically determines whether information to be printed out (rendered) is color-page information or monochrome-page information.
<Problem (1)>
For example, in the intermediate data shown in FIG. 8B, when the color information of object 1 is color information and when the color information of objects 2 and 3 is monochrome information, the page is determined to be a color page.
When object 2 is rendered over object 1, color information does not appear in the printing result. In this case, the page is determined to be a color page although the page should be determined to be a monochrome page.
<Problem (2)>
When the intermediate data is rendered to the first bitmap in 8-bits/pixel RGB and then the first bitmap is converted to a second bitmap in 4-bits/pixel MCYK, a user wants to freely select to print (render) R=G=B pixel with a single color of K or a mixture of MCYK. Also, the user wants to freely select to print (render) R=G=B pixel with a single color of K or a mixture of MCYK in each type of object, such as a character, a figure, or an image.
However, when the condition R=G=B is satisfied in all the pixels of the first bitmap and therefore the page is determined to be a monochrome page, the used cannot select to print (render) the page with only K or a mixture of MCYK.